package com.hdjd.service;

import com.hdjd.entities.Account;
import com.hdjd.entities.School;

import java.util.List;

/**
 * @author 刘子强
 * 2021/1/28 9:16
 */
public interface SchoolService {

    /**
     * 查询学校集合
     * @param schProvince
     * @param schName
     * @param pageCurrent
     * @param pageSize
     * @return
     */
    List<School> selectSchoolList(String schProvince, String schName, Integer pageCurrent, Integer pageSize);

    /**
     * 根据院校id查询院校信息
     * @param schoolId
     * @return
     */
    School selectSchoolBySchoolId(Integer schoolId);

    /**
     * 根据院校id修改院校信息
     * @param school
     * @return
     */
    boolean updateSchoolBySchoolId(School school);

    /**
     * 新增院校
     * @param school
     * @return
     */
    public boolean insertSchool(School school);

    /**
     * 根据院校id修改院校状态
     * @param schoolId
     * @return
     */
    boolean updateSchoolStatusBySchoolId(Integer schoolId, Integer schStatus);

    /**
     * 查询出所有院校，无分页
     * @return
     */
    List<School> selectAllSchools();

    /**
     * 查询待审核的商家申请
     * @param schoolId
     * @return
     */
    List<Account> businessApplyNeedCheck(Integer schoolId, Integer pageCurrent, Integer pageSize);

    /**
     * 统计待审核的商家申请数据笔数
     * @param schoolId
     * @return
     */
    Integer countBusinessApplyNeedCheck(Integer schoolId);

    /**
     * 查询已审核的商家申请
     * @param schoolId
     * @return
     */
    List<Account> businessApplyChecked(Integer schoolId, Integer pageCurrent, Integer pageSize);

    /**
     * 统计已审核的商家申请数据笔数
     * @param schoolId
     * @return
     */
    Integer countBusinessApplyChecked(Integer schoolId);

    /**
     * 查询待审核的配送员申请
     * @param schoolId
     * @return
     */
    List<Account> deliveryManApplyNeedCheck(Integer schoolId, Integer pageCurrent, Integer pageSize);

    /**
     * 统计待审核的配送员申请数据笔数
     * @param schoolId
     * @return
     */
    Integer countDeliveryManApplyNeedCheck(Integer schoolId);

    /**
     * 查询已审核的配送员申请
     * @param schoolId
     * @return
     */
    List<Account> deliveryManApplyChecked(Integer schoolId, Integer pageCurrent, Integer pageSize);

    /**
     * 统计已审核的配送员申请数据笔数
     * @param schoolId
     * @return
     */
    Integer countDeliveryManApplyChecked(Integer schoolId);

    /**
     * 审核通过商家申请
     * @param accId
     * @return
     */
    boolean passBusinessApply(Integer accId);

    /**
     * 审核不通过商家申请
     * @param accId
     * @return
     */
    boolean unPassBusinessApply(Integer accId);

    /**
     * 审核通过配送员申请
     * @param accId
     * @return
     */
    boolean passDeliverymanApply(Integer accId);

    /**
     * 审核不通过配送员申请
     * @param accId
     * @return
     */
    boolean unPassDeliverymanApply(Integer accId);
}
